메모리에 프로그램들이 많이 올라와 공간이 꽉 찼다고 하더라도 가상메모리를 설정하면 추가로 새로운 프로그램을 실행시킬 수 있게 된다. 이것은 메모리에 올라와 있지만 사용하지 않고 있는 프로그램을 하드디스크에 설정된 가상 메모리 공간으로 보내고 그 빈 공간에 새로운 프로그램을 로딩하기 때문이다. 또한 가상 메모리에 있는 내용을 사용하려면 다시 메모리로 올리고 그 대신에 메모리에 있던 다른 내용이 하드디스크에 저장된다. 이처럼 메모리와 하드디스크 사이의 데이터 교환을 ( )이라고 한다.
무료이용 : 무료 배포 : 허용 소스코드 취득 및 수정 : 가능 2차적 저작물 소스코드 공개 : 공개 독점 소프트웨어와 결합 : 불가능
영국 회사인 캐노니컬에서 데비안 GNU/Linux를 기초로 하여 만든 리눅스 배포판으로 고유한 데스크톱 환경인 유니티(Unity)를 사용한다.
[root@ihd ~ ]# find / -name '*.so' 2>/dev/null >list.txt ^Z [1]+ Stopped find / -name '*.so' 2>/dev/null >list.txt [root@ihd ~ ]# jobs [1]+ Stopped find / -name '*.so' 2>/dev/null >list.txt [root@ihd ~ ]# ps PID TTY TIME CMD 21687 pts/0 00:00:00 bash 21687 pts/0 00:00:00 find 21687 pts/0 00:00:00 ps [root@ihd ~ ]# ( ) [1]+ find / '*.so' 2> /dev/null > list.txt & [root@ihd ~ ]# jobs [1]+ Running find / '*.so' 2> /dev/null > list.txt &
[root@ihd ~ ]# cat while.sh # !/bin/bash CNT = 0 while [ "$CNT" -le 5 ] do echo $CNT CNT = `expr $CNT + 1` done [root@ihd ~ ] ./while.sh | tail -1 ( 괄호 )
#boot = /dev/sda default = 0 timeout = 10 splashimage = (hd0,3)/boot/grub/splash.xpm.gz title CentOS (2.6.32-358.el6.i686) root (hd0,3) kernel /boot/vmlinuz-2.6.32-358.el6.i686 ro root = UUID = fa23421-a342-43-c7.. initrd /boot/initramfs-2.6.32-358.el6.i686.img title DOS rootnoverify (hd0,0) chainloader + 1
( )는 RAID-0의 단점인 결합 허용을 지원하지 않는 점과 RAID-1의 저장 공간의 비효율성을 보완한 레벨로 디스크의 개수를 늘릴수록 저장 공간의 효율성이 높아 진다. 패리티 정보를 이용하여 하나의 디스크가 고장이 발생할 경우에도 사용이 가능한 구성 방식으로 최소 3개의 디스크로 구성해야 한다. 패리티 정보는 별도의 디스크를 사용하지 않고, 구성된 디스크에 분산하여 기록하지만 데이터를 중복 저장하지는 않아 가장 보편적으로 사용된다.
데이터의 암호화와 해독을 수행하고, 효율적인 전송을 위해 필요에 따라 압축과 압축해제를 수행하는 계증이다.
네트워크상에서 IP 주소를 물리적 하드웨어 주소로 대응시키기 위해 사용하는 프로토콜이다.
C 클래스에 속하는 하나의 네트워크 주소 대역을 할당 받았다. 이 주소 대역을 4개의 네트워크로 나누어 하나의 서브네트워크에 속한 전체 호스트의 개수를 64개씩 할당하려고 한다.
가. 마운트할 디렉터리 생성하기 나. mount 명령어로 마운트 하기 다. fdisk로 파티션 생성하기 라. /etc/fstab 수정해서 자동으로 마운트되도록 설정하기 마. mkfs 명령어로 파일 시스템 생성하기 바. 하드디스크 설치하기
ㅇ 사용자 ihd에 대해 최소 30일에 한번은 패스워드를 변경하게 한다. ㅇ 패스워드가 만료되기 4일전에 사용자에게 알리도록 한다. ㅇ 잦은 패스워드 변경을 제한하기 위해 변경한 패스워드는 7일 동안 유지하도록 한다.
ㄱ. dd를 이용한 파일 생성 ㄴ. fdisk를 이용한 파일 생성 ㄷ. mkswap 명령을 이용한 스왑 파일 생성 ㄹ. swapon 명령을 이용한 스왑 활성화
ㅇ 1월부터 12월까지 2개월 마다 1일날 오전 1시 10분에 실행되도록 한다. ㅇ 실행 파일의 경로는 /etc/joon.sh 이다.
alias eth0 8139too
ㅇ 수동으로 모듈을 커널에 추가하는 명령어 ㅇ 로드(Load)된 커널 목록 및 상관관계를 확인하는 명령어 ㅇ 커널에 로드되어 있는 모듈을 제거하는 명령어
프린터 큐에 대기 중인 작업을 삭제하기 위해서는 먼저 ( ㄱ ) 명령어를 이용해서 큐의 상태를 확인하고 ( ㄴ )의 명령어를 이용하여 큐에 대기중인 작업을 삭제한다.
/etc/passswd와 /etc/shadow를 점검해 주는 명령으로 필드 수 검사, 아이디 중복 유무 검사, 유효한 사용자 검사, 홈 디렉터리 존재 유무검사 등을 수행한다.
/etc/service 파일의 변경, 삭제, 이름변경, 파일추가, 링크 파일생성 등을 불가능하게 설정한다.
ㅇ 파티션 이름 : /dev/hda5 ㅇ 마운트 디렉터리 : /mnt ㅇ 읽기만 가능하게 함 ㅇ 일반 사용자도 마운트 할 수 있게 허용함
root / ext4 defaults 0 0
ㅇ 이 작업은 이전 커널 컴파일에서 남아 있을지도 모르는 많은 불필요한 파일들을 정리하는 것과 동시에 모든 설정과 커널의 소스가 초기 상태로 되돌아가도록 한다. 즉 불필요한 파일들을 정리해 주는 작업을 의미한다. ㅇ 이 작업은 리눅스 커널 설정 과정에서 선택된 커널에 필요한 모듈(module)들을 생성하는 작업을 의미한다.
/var/log/wtmp { monthly create 0644 root utmp minsize 1M rotate 1 }
커널 링 버퍼(kernel ring buffer)의 내용을 출력하고 제어하는 명령이다. 커널 링 버퍼는 커널의 동작과 관련된 메시지를 기록해 주는 영역으로 초기에는 4,096byte의 크기였으나, 커널 1.3.45버전에서는 8,192byte, 2.1.113 버전 이후에는 16,384byte, 2.4.23/2.6 버전 이후에는 커널 설정 옵션으로 지정하는데 RHEL 6 버전 계열일 경우에는 512kb가 할당 되어 있다.
# vi /etc/rsyslog.conf authpriv.* ( )
# ls *.conf | ( ㄱ ) ( ㄴ ) > conf.backup
rsync를 이용하여 원격호스트 192.168.10.2의 /var을 압축해서 로컬호스트 /로 복사한다.
# dd ( ㄱ )=/dev/sda ( ㄴ )=/dev/sdb bs=1M
웹 사용자가 관련 디렉터리에 접근 시 index.php 파일을 가장 먼저 인식하도록 설정하려고 한다.
# vi httpd.conf AddType application/(ㄱ) .htm .html .php AddType application/(ㄴ) .phps
# vi ( ) server nis.ihd.or.kr ypserver nis.ihd.or.kr domain ihd.or.kr
# ( ) -L posein:500: yuloje:501:
NFS 서버의 주소는 192.168.5.13이고 공유된 디렉터리는 /joon이다. 이 디렉터리를 로컬 시스템의 /mnt 디렉터리로 마운트하려고 한다.
NFS 클라이언트에서 접근하는 root 사용자를 NFS 서버의 root 사용자로 인정한다.
이것은 일종의 대리인 역할을 수행하는 프로그램으로 메일박스에 도착한 메일을 대행해서 가져오거나 전달하는 역할을 수행한다. 대표적인 프로그램으로 procmail이 있는데, 스팸 메일을 필터링하거나 메일 정렬 등의 역할을 수행한다.
www IN A 192.168.12.22 www1 IN ( ) www www2 IN ( ) www
allow-query { ( ) } ;
zone "( )" IN { type master; file "linux.rev"; };
가상화 자원들 또는 가상화 자원들을 사용하는 사용자들에게 아무런 영향을 미치지 않으면서 물리적인 자원들이 교체될 수 있도록 해준다.
사용자의 요구사항에 맞게 할당, 배치, 배포할수 있도록 만들어 놓은 것을 말한다. 가상화 기반의 자원 할당은 개별 물리적 단위보다도 더 세밀한 조각 단위에서 가능하도록 해준다.
# ( ) shutdown VM1
# vi /etc/dhcpd.conf options ( ) 192.168.12.1
# include main() { char *m; while(1) m=malloc(1000); }
공격자가 임의로 자신의 IP 주소 및 포트를 대상 서버의 IP 주소 및 포트와 동일하게 하여 서버를 공격한다. 이러한 패킷을 공격 시스템에 보내면 해당 시스템은 SYN 패킷을 출발지 주소를 참조하여 응답 패킷의 목적지 주소를 SYN 패킷의 출발주 주소로 설정해서 보내는데, 이 때 패킷은 외부로 나가지 않고 자신에게 되돌아 온다. 이 공격법은 SYN Flooding 처럼 동시 사용자 수를 증가시키므로 CPU 부하까지 발생시킨다.
스크린 라우터와 단일 홈 게이트웨이를 조합한 형태로 스크린 라우터에서 패킷 필터링을 1차로 수행하고, 배스천 호스트 역할을 수행하는 단일 홈 게이트웨이에서 프록시와 같은 서비스를 통해 2차 방어를 한다. 또한 배스천 호스트를 스크린 라우터를 거치지 않는 모든 접속을 거부하며, 스크린 라우터도 배스천 호스트를 거치지 않는 모든 접속을 거부하도록 설정한다.
# iptables -A SSH -p udp --dport 22 -m ( ㄱ ) ( ㄴ ) --seconds 60 ( ㄷ ) 15 -j drop
레드햇 계열 리눅스인 경우에는 /etc/rc.d/init.d/iptables 라는 스크립트를 제공하는데, 이 스크립트는 iptables-save 명령을 사용해서 관련 정책을 저장한다. 특히, 이 스크립트를 사용해서 저장 명령을 수행하면 ( )라는 파일에 의해 관련 정책이 저장되어 시스템 재부팅 시에도 자동으로 규칙이 적용된다.